Methods, systems and apparatuses for white balance calibration

ABSTRACT

Methods, systems and apparatuses for white balance calibration. A calibration correction matrix is specifically calibrated for each individual imager, thereby providing improved automatic white balance performance. The individual imager calibration corrects for variation of the spectral response among different imagers. The calibration correction matrix is placed before the gray checker module, which analyzes the chromaticity of the image pixels and supplies resulting statistics to the automatic white balance decision engine for use in automatic white balance operations. The calibration correction matrix may be implemented as a 3×3 matrix.

FIELD OF THE INVENTION

Disclosed embodiments relate generally to imagers, and more particularlyto methods, systems and apparatuses for the calibration of imagers foran improved automatic white balance function.

BACKGROUND OF THE INVENTION

Imagers typically have an array of pixels containing photosensors, whereeach pixel produces a signal corresponding to the intensity of lightimpinging on that element when an image is focused on the pixel array.The signals may then be digitized and stored, for example, forsubsequent display of a corresponding image on a monitor, or forproviding hardcopy images, or for providing information about thecaptured image.

When capturing a color image photosensors must be able to separatelydetect color components of the captured image. One of the mostchallenging problems in color image processing is adjusting the colorgains of the system to compensate for the variations in the illuminationspectra incident on the imager due to the illumination source, alsoknown as white balance. For example, when a digital camera is moved fromoutdoors (sunlight) to indoor fluorescent or incandescent lightconditions, the color in the image may shift. If an image of a whitecard looks white when indoors, for example, it might look bluishoutside. If it looks white under fluorescent light, it might lookyellowish under an incandescent lamp.

In order to compensate for changes in illumination spectra, the gains ofthe color processing systems and/or imager should be adjusted, using forexample, automatic white balance techniques. Automatic white balancerelies on accurately measuring the color pixels of the image. Duringmanufacturing, color characteristics of imagers may vary substantially.An imager with color characteristics that are substantially differentfrom those that the automatic white balance assumes may result in amalfunction of the automatic white balance.

Accordingly, there is a need and desire for methods, systems andapparatuses for calibrating imagers to provide an improved automaticwhite balance function.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a Bayer color filter pattern.

FIG. 2 is a flowchart showing the calibration method of the disclosedembodiments.

FIG. 3 is a portion of a color processing pipeline including thecalibration matrix of disclosed embodiments.

FIG. 4 is a block diagram of a system-on-a-chip imager implementing adisclosed embodiment.

FIG. 5 illustrates an example of a sensor core used in the FIG. 4imager.

FIG. 6 illustrates a processing system, for example, a digital still orvideo camera processing system constructed in accordance with disclosedembodiments.

DETAILED DESCRIPTION OF THE INVENTION

In the following detailed description, reference is made to theaccompanying drawings which form a part hereof, and in which are shownby way of illustration specific embodiments that may be practiced. Itshould be understood that like reference numbers represent like elementsthroughout the drawings. These example embodiments are described insufficient detail to enable those skilled in-the art to practice them.It is to be understood that other embodiments may be utilized, and thatstructural, material, and electrical changes may be made, only some ofwhich are discussed in detail below.

In the following description, the embodiments are described in relationto a CMOS imager for convenience purposes only; the disclosedembodiments, however, have wider applicability to automatic whitebalance operations for pixel output signals from any type of imager,including CCD imagers.

For photosensors to capture a color image, they must be able toseparately detect color components of the captured image. For examplewhen using a Bayer pattern, as shown for example in FIG. 1, photonshaving a wavelength corresponding to red, green or blue light aredetected by respective red, green, and blue pixels (i.e., each pixel issensitive only to one color spectral band). For this to occur, a colorfilter array (CFA) is typically placed in front of the pixel array sothat each pixel receives the light of the color of its associated filteraccording to a specific pattern, e.g., the Bayer pattern 10 of FIG. 1.Other color filter array patterns are also known in the art and areapplicable as well.

As shown in FIG. 1, the Bayer pattern 10 is an array of repeating red(R), green (G), and blue (B) filters. A red pixel is a pixel covered bya red filter; similarly, a blue pixel or a green pixel is a pixelcovered by a blue or a green filter, respectively. In the Bayer pattern10, red pixels 11, green pixels 13 and blue pixels 12 are arranged sothat alternating red 11 and green 13 pixels are in one row 15 of a pixelarray, and alternating blue 12 and green 13 pixels are in a next row 20.These alternating rows 15, 20 are repeated throughout the pixel array.Thus, when the imager is read out, the pixel sequence for one row (i.e.,row 15) reads GRGRGR, etc., and the sequence for the next row (i.e., row20) reads BGBGBG, etc. While FIG. 1 depicts an array having only fiverows and five columns, pixel arrays typically have hundreds or thousandsof rows and columns of pixels.

One of the most challenging problems in color image processing isadjusting the color gains of the system to compensate for the variationsin the illumination spectra incident on the imager due to theillumination source, also known as white balance. This problem stemsfrom the fact that spectral emission curves of common sources ofillumination are significantly different from each other. For example,in accordance with Plank's law, the spectral energy curve of the sun isshifted towards the shorter wavelengths relative to the spectral energycurve of an incandescent light source. Therefore, the sun can beconsidered to be a “blue-rich” illuminator while an incandescent bulbcan be considered to be a “red-rich” illuminator. As a result, if thecolor processing settings are not adjusted, scenes illuminated by thesunlight tend to produce “bluish” imagery, while scenes illuminated byan incandescent source tend to appear “reddish.”

The human eye and brain are capable of “white balancing.” If a persontakes a white card outside, it looks white. If he takes it inside andviews it under fluorescent lights, it looks white. When viewed under anincandescent light bulb, the card still looks white. Even when placedunder a yellow light bulb, within a few minutes, the card will lookwhite. With each of these light sources, the white card is reflecting adifferent color spectrum, but the brain is smart enough to make it lookwhite.

Obtaining the same result with a camera or other imager is harder. Whenthe white card moves from light source to light source, an imager “sees”different colors under the different conditions. Consequently, when adigital camera is moved from outdoors (sunlight) to indoor fluorescentor incandescent light conditions, the color in the image shifts. If thewhite card looks white when indoors, for example, it might look bluishoutside. If it looks white under fluorescent light, it might lookyellowish under an incandescent lamp.

In order to compensate for changes in illumination spectra, the gains ofthe color processing systems and/or imager should be adjusted. Thisadjustment is usually performed to preserve the overall luminance(brightness) of the image. As a result of proper adjustment, gray/whiteareas of the image appear gray/white on the image-rendering device(hence the term “white balance”). In the absence of specific knowledgeof the spectra of the illumination source, this adjustment can beperformed based on inference of the spectra of illumination from ananalysis of the image itself.

The most commonly used approach to computing the proper adjustment tothe color channel gains is based on the premise that in complex imagesall colors are equally present in the image. Based on this assumption,the sums of all red, green and blue components in the image should beequal (in other words, the image should average to gray). Following thisapproach, the overall (average over the entire image) luminance Y, andred (R_avg), green (G_avg) and blue (B_avg) components are evaluated.The color gains (g_red, g_green, g_blue) are then selected so thatY=[g_red]*R_avg=[g_green]*G_avg=[g_blue]*B_avg.

In most instances, no color shift is desired in the resulting capturedimage. Or, conversely, some times a controlled color shift may bedesired that differs from that which naturally occurs as a result ofvarious light sources in the captured image. In the case where a colorshift is to be removed, one may appropriately set the white balance toaccount for any color shifts resulting from non-white light sources. Indigital imagers, the white balance may be set by appropriately gainingor amplifying the digital outputs of the pixel array for the differentpixel colors. For example, in an red, green and blue array, as employedwith a Bayer pattern, a picture with a bluish cast or one that iscaptured using a light source with a high color temperature may be madeless blue by modifying the red, green and blue digital outputsaccordingly to shift the overall color balance. The challenge, ofcourse, is in determining to what degree to modify the red, green andblue digital outputs.

Automatic white balance relies on accurately measuring the color pixelsof the image. During manufacturing, color characteristics of imagers mayvary substantially. An imager with color characteristics that aresubstantially different from those that the automatic white balanceassumes may result in a malfunction of the automatic white balance.

To ensure accurate performance of the automatic white balance operation,the imager can be calibrated. One way to calibrate the imager is tocapture a flat field image, calculate the average response of the red,green and blue channels, calculate the ratios R/G and B/G and storethese ratios in the imager. However, this method works only when theshape of the spectral response curves does not vary from imager toimager.

The spectral response curve indicates how much current the cell cangenerate from light energy at each wavelength of light (e.g., reflectedintensity vs. wavelength). It is a fixed characteristic of the cell thatis independent of the illuminant. The spectral response curves forvarious imager modules are dependent on the thickness and location ofthe various layers of the imager. Therefore, the spectral response curvefor different imager modules will vary based on the manufacturingtolerances, etc. that are used.

Imager calibration is required to ensure reliable performance ofautomatic white balance in situations where substantial manufacturingvariance of imager spectral characteristics exists. R/G and B/G gainratios can be calibrated during manufacturing to improve automatic whitebalance performance. This may be sufficient if the relative sensitivityof the red, green and blue color channels in the imager varies while theshape of the spectral response curves does not. It has been shown,however, that the shape of spectral response does vary and thus, thatR/G and B/G calibration may not be sufficient.

Disclosed embodiments provide improved automatic white balanceperformance by providing a calibration correction matrix that isspecifically calibrated for each imager and thus, is able to correct forvariation of the spectral response among different imagers. Inimplementation, the calibration correction matrix is placed before agray checker module that processes automatic white balance statistics(see calibration matrix 120 f in FIG. 3).

The gray checker module analyzes the chromaticity of the image pixelsand supplies resulting statistics to the automatic white balancedecision engine for use in automatic white balance operations.Variations in spectral response of the red, green and blue colorchannels may cause the gray checker module to produce inaccuratestatistics, which results in degraded white balance performance. Byplacing the calibration correction matrix of the disclosed embodimentsat the input of the gray checker module, the spectral curve variationswill be substantially compensated for.

The calibration correction matrix may be implemented as a 3×3 matrix.Thus, calibration requires calculation of nine (9) coefficients for thematrix and storing them in the imager. This is done during imagermanufacturing. It should be noted that less than nine coefficients maybe needed in some cases, depending on the amount of variation presentbetween the spectral curves. The calibration will result in a matrix,such as that shown in Equation (1):

$\begin{matrix}{{C_{calib} = {\begin{matrix}a & b & c \\d & e & f \\g & h & i\end{matrix}}},} & (1)\end{matrix}$

where C_(calib) represents the calibration correction matrix and eachcoefficient a, b, c, d, e,f, g, h, and i is one of the calibrationcorrection coefficients determined during calibration of the imager.

During operation, a calibration correction mode may be enabled duringimager use, during which the calibration correction coefficients areloaded into the calibration correction matrix. The calibrationcoefficients are determined during imager calibration (described below)and are stored in memory in the imager, for example in ROM 142 (FIG. 4).The coefficients are applied to the image data in accordance withEquation (2):

RGB_(GC) =C _(calib) *RGB _(RAW)   (2)

where RGB_(GC) is the RGB data corrected for variation in the spectralresponse, C_(calib) represents the calibration correction matrix andRGB_(raw) is the raw RGB data input into the calibration module.Equation (2) may alternatively be represented as:

$\begin{matrix}{{\begin{matrix}R_{GC} \\G_{GC} \\B_{GC}\end{matrix}} = {{\begin{matrix}a & b & c \\d & e & f \\g & h & i\end{matrix}}{\begin{matrix}R_{RAW} \\G_{RAW} \\B_{RAW}\end{matrix}}}} & (3)\end{matrix}$

The coefficients are determined in a manner similar to calculating theprimary color correction matrix. Referring to FIG. 2, an image of a testtarget is captured using a “reference” imager, as shown in step S1 ofmethod 50. The test target typically contains a variety of coloredpatches. The test target may be, for example, the known Macbeth colorchart where the version for digital cameras having a large collection ofpatches is preferably used. An image of the test target is then capturedusing the imager that is to be calibrated (step S2). Then, Equation (2)(above) is solved simultaneously for each set of known RGB_(GC) andRGB_(RAW) data (e.g., for each of the colored patches) to derive thevalues in C_(calib) (step S3). This can be done for example using theknown least squared error method or any other suitable method. TheRGB_(GC) data is the data captured using the “reference” imager and theRGB_(RAW) data is that for the imager being calibrated. The imageprocessing steps of method 50 may be carried out as a software programstored in a storage medium or by any other known method.

When calibration correction is not performed, the matrix C_(calib) is aunity matrix, as shown in Equation (4) below, and thus has no effect onthe raw RGB data that is input into the gray checker module.

$\begin{matrix}{C_{calib} = {{\begin{matrix}1 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 1\end{matrix}}.}} & (4)\end{matrix}$

However, it is desired that calibration be performed and the calibrationcorrection matrix be applied to the image data so that the white balanceoperation may appropriately compensate for the difference in spectralresponse curves between imagers.

FIG. 3 illustrates a portion of a color processing pipeline 120 used inan imager 100 (FIG. 4) including the calibration matrix module 120 f ofthe disclosed embodiments. The color processing pipeline 120 mayinclude, among other things, a color channel gains correction module 120a, a lens shading correction module 120 b, a demosaicing/noisereduction/defect correction/sharpening module 120 c, a color correctionmatrix module 120 d, a gamma (color) correction module 120 e, thecalibration matrix module 120 f, a gray checker module 120 g and anautomatic white balance decision engine 120 h. The image data is inputfrom a sensor core 200 and corrected for color channel gains in thecolor channel gains module 120 a using the latest white balanceinformation, which is generally generated by analyzing the previousframe. The image data undergoes lens shading correction to compensatefor lens shading in the lens shading module 120 b. Demosaicing, noisereduction, defect correction and sharpening occur in module 120 c.

The processed image data RGB_(RAW) is separately subjected to both colorcorrection matrix 120 d and calibration matrix 120 f. The image data towhich the color correction matrix 120 d is applied (RGB_(CC)) is inputinto the gamma correction module 120 e to produce color corrected imagedata (R′G′B′) for the current frame. This image data is output from thecolor processing pipeline 120 and undergoes further image processing inaccordance with known methods. The image data to which the calibrationmatrix 120 f is applied (RGB_(GC)) is input into the gray checker module120 g where automatic white balancing statistics are gathered for use ina white balancing application. The image data (RGB_(avg)) output fromthe gray checker module 120 g is input into the automatic white balancedecision engine 120 h. The automatic white balance decision engine 120 hcalculates the color channel gains (CCG) and color correction matrix(CCM) required to compensate for the illuminant, which the gray checkermodule 120 g determines is applicable to the scene. The color channelgains (CCG) are sent to the color channel gains module 120 a and thecolor correction matrix (CCM) is sent to the color correction matrixmodule 120 d for use on the image data RGB_(RAW) from the next frame.

FIG. 4 illustrates a block diagram of a system-on-a-chip (SOC) imager100 which implements disclosed embodiments and which may use any type ofimager array technology, e.g., CCD, CMOS, etc. The imager 100 comprisesa sensor core 200 that communicates with an image processor circuit 110connected to an output interface 130. A phase-locked loop (PLL) 244 isused as a clock for the sensor core 200. The image processor circuit110, which is responsible for image and color processing, includesinterpolation line buffers 112, decimator line buffers 114, and thecolor processing pipeline 120. One of the functions of the colorprocessing pipeline 120 is the performance of white balancing inaccordance with disclosed embodiments. Image processor circuit 110 mayalso be implemented as a digital hardware circuit, e.g., an ASIC, adigital signal processor (DSP) or may even be implemented on astand-alone host computer.

The output interface 130 includes an output first-in-first-out (FIFO)parallel buffer 132 and a serial Mobile Industry Processing Interface(MIPI) output 134, particularly where the imager 100 is used in a camerain a mobile telephone environment. The user can select either a serialoutput or a parallel output by setting registers in a configurationregister within the imager 100 chip. An internal bus 140 connects readonly memory (ROM) 142, a microcontroller 144, and a static random accessmemory (SRAM) 146 to the sensor core 200, image processor circuit 110,and output interface 130.

FIG. 5 illustrates a sensor core 200 that may be used in the imager 100(FIG. 4). The sensor core 200 includes, in one embodiment, a pixel array202. Pixel array 202 is connected to analog processing circuit 208 by agreen1/green2 channel 204 which outputs pixel values corresponding totwo green channels of the pixel array 202, and through a red/bluechannel 206 which contains pixel values corresponding to the red andblue channels of the pixel array 202.

Although only two channels 204, 206 are illustrated, there areeffectively 2 green channels and/or more than the three standard RGBchannels. The green1 (i.e., green pixels in the same row as red pixels)and green2 (i.e., green pixels in the same row as blue pixels) (seeFIG. 1) signals are read out at different times (using channel 204) andthe red and blue signals are read out at different times (using channel206). The analog processing circuit 208 outputs processed green1/green2signals G1/G2 to a first analog-to-digital converter (ADC) 214 andprocessed red/blue signals R/B to a second analog-to-digital converter216. The outputs of the two analog-to-digital converters 214, 216 aresent to a digital processing circuit 230. It should be noted that thesensor core 200 represents an architecture of a CMOS sensor core;however, disclosed embodiments can be used with any type of solid-statesensor core, including CCD and others.

Connected to, or as part of, the pixel array 202 are row and columndecoders 211, 209 and row and column driver circuitry 212, 210 that arecontrolled by a timing and control circuit 240 to capture images usingthe pixel array 202. The timing and control circuit 240 uses controlregisters 242 to determine how the pixel array 202 and other componentsare controlled. As set forth above, the PLL 244 serves as a clock forthe components in the sensor core 200.

The pixel array 202 comprises a plurality of pixels arranged in apredetermined number of columns and rows. For a CMOS imager, the pixelsof each row in the pixel array 202 are all turned on at the same time bya row select line and the pixels of each column within the row areselectively output onto column output lines by a column select line. Aplurality of row and column select lines are provided for the entirepixel array 202. The row lines are selectively activated by row drivercircuitry 212 in response to row decoder 211 and column select lines areselectively activated by a column driver 210 in response to columndecoder 209. Thus, a row and column address is provided for each pixel.The timing and control circuit 240 controls the row and column decoders211, 209 for selecting the appropriate row and column lines for pixelreadout, and the row and column driver circuitry 212, 210, which applydriving voltage to the drive transistors of the selected row and columnlines.

Each column contains sampling capacitors and switches in the analogprocessing circuit 208 that read a pixel reset signal Vrst and a pixelimage signal Vsig for selected pixels. Because the sensor core 200 usesa green1/green2 channel 204 and a separate red/blue channel 206, analogprocessing circuit 208 will have the capacity to store Vrst and Vsigsignals for green1/green2 and red/blue pixel values. A differentialsignal (Vrst−Vsig) is produced by differential amplifiers contained inthe analog processing circuit 208. This differential signal (Vrst−Vsig)is produced for each pixel value. Thus, the signals G1/G2 and R/B aredifferential signals representing respective pixel values that aredigitized by a respective analog-to-digital converter 214, 216. Theanalog-to-digital converters 214, 216 supply the digitized G1/G2 and R/Bpixel values to the digital processing circuit 230 which forms thedigital image output (for example, a 10 bit digital output). The outputis sent to the image processor circuit 110 (FIG. 4) for furtherprocessing. Although the invention is described using a CMOS array andassociated readout circuitry, disclosed embodiments may be used with anytype of pixel array, e.g., CCD with associated readout circuitry, or maybe implemented on pixel values of an image not associated with a pixelarray.

FIG. 6 illustrates a processor system as part of a digital still orvideo camera system 800 employing a system-on-a-chip imager 100 asillustrated in FIG. 4, which imager 100 provides an automatic whitebalance operation as described above. The processing system includes aprocessor 805 (shown as a CPU) which implements system, e.g. camera 800,functions and also controls image flow and image processing. Theprocessor 805 is coupled with other elements of the system, includingrandom access memory 820, removable memory 825 such as a flash or discmemory, one or more input/output devices 810 for entering data ordisplaying data and/or images and imager 100 through bus 815 which maybe one or more busses or bridges linking the processor systemcomponents. A lens 835 allows an image or images of an object beingviewed to pass to the pixel array 202 of imager 100 when a “shutterrelease”/“record” button 840 is depressed.

The camera system 800 is only one example of a processing system havingdigital circuits that could include imagers. Without being limiting,such a system could also include a computer system, cell phone system,scanner, machine vision system, vehicle navigation system, video phone,surveillance system, auto focus system, star tracker system, motiondetection system,

image stabilization system, and other image processing systems. Whiledisclosed embodiments have been described in detail, it should bereadily understood that the claimed invention is not limited to thedisclosed embodiments. Rather the disclosed embodiments can be modifiedto incorporate any number of variations, alterations, substitutions orequivalent arrangements not heretofore described.

1. A method of processing a plurality of pixel signals corresponding toan image, the method comprising: applying a white balance calibrationmatrix to each pixel signal of a first frame of the image; determiningautomatic white balancing statistics for the first frame of the imagebased on the pixel signals to which the white balance calibration matrixhas been applied; and adjusting each pixel signal of a next frame of theimage by performing automatic white balancing using the determinedautomatic white balance statistics for the first frame of the image. 2.The method of claim 1, wherein the white balance calibration matrix isdetermined during imager calibration.
 3. The method of claim 1, whereinthe white balance calibration matrix is obtained from a storagelocation.
 4. The method of claim 1, wherein the white balancecalibration matrix corrects for variation in spectral response curves ofthe imager.
 5. The method of claim 1, further comprising repeating thesteps of applying the white balance calibration matrix, determiningautomatic white balancing statistics and adjusting each pixel signal ofthe next frame of the image for subsequent frames of the image.
 6. Amethod of operating an imaging system, the method comprising: acquiringa first test image using the imaging system; acquiring a second testimage using a reference imaging system; computing a white balancecalibration matrix from the test images; and storing the white balancecalibration matrix for use in an automatic white balancing operation tobe performed by the imaging system.
 7. The method of claim 6, whereinthe test images correspond to a test target including a plurality ofcolors.
 8. The method of claim 7, wherein computing the white balancecalibration matrix further comprises: determining a first set of imagesignal data for each of the colors of the test target for the first testimage; determining a second set of image signal data for each of thecolors of the test target for the second test image; and simultaneouslysolving the first and second sets of image signal data to determine thewhite balance calibration matrix.
 9. The method of claim 8, whereinsimultaneously solving the first and second sets of image signal datacomprises performing a least squared error method on the first andsecond sets of image signal data.
 10. The method of claim 8, whereinsimultaneously solving the sets of image signal data comprises solvingthe equation RGB_(GC)=C_(calib)*RGB_(RAW) for each of the colors of thetest target, wherein RGB_(GC) is the image signal data for the secondtest image, RGB_(RAW) is the image signal data for the first test imageand C_(calib) is the white balance calibration matrix.
 11. The method ofclaim 7, wherein the white balance calibration matrix is a 3×3 matrix.12. The method of claim 7, wherein the white balance calibration matrixcorrects for variation in spectral response curves of the imager.
 13. Animaging device comprising: an array of pixels for capturing an image andproviding pixel output signals; a storage device for storing a whitebalance calibration matrix; and a processing circuit for processing thepixel output signals produced by the array, the processing circuit beingconfigured to: apply the white balance calibration matrix to each pixeloutput signal of a first frame of the image; determine automatic whitebalancing statistics for the first frame of the image based on the pixeloutput signals to which the white balance calibration matrix has beenapplied; and adjust each pixel output signal of a next frame of theimage by performing automatic white balancing using the determinedautomatic white balance statistics for the first frame of the image. 14.The imaging device of claim 13, wherein the white balance calibrationmatrix is determined during imager calibration and stored in the storagedevice.
 15. The imaging device of claim 13, wherein the white balancecalibration matrix corrects for variation in spectral response curves ofthe imaging device.
 16. The imaging device of claim 13, wherein thewhite balance calibration matrix is a 3×3 matrix.
 17. A digital cameracomprising: a pixel array for capturing an image received through alens; a storage area for storing a white balance calibration matrix; anda pixel array processing circuit configured to perform an automaticwhite balance adjustment on the pixel signals for a captured image usingthe white balance calibration matrix.
 18. The digital camera of claim17, wherein the white balance calibration matrix is determined duringimager calibration and stored in the storage area.
 19. The digitalcamera of claim 17, wherein the white balance calibration matrixcorrects for variation in spectral response curves of the imagingdevice.
 20. A storage medium comprising: a set of instructions stored onthe medium and executable on a processor to perform the acts of:determining a first set of image signal data for each of a plurality ofcolors of a test target for a first test image, wherein the first testimage is acquired from an imager to be calibrated; determining a secondset of image signal data for each of the plurality of colors of the testtarget for a second test image, wherein the second test image isacquired from a reference imager; computing a white balance calibrationmatrix from the sets of image signal data; and storing the white balancecalibration matrix for use in an automatic white balancing operation tobe performed by the calibrated imager.
 21. The storage medium of claim20, wherein computing the white balance calibration matrix from the setsof image signal data comprises simultaneously solving the first andsecond sets of image signal data to determine the white balancecalibration matrix.
 22. The storage medium of claim 21, whereinsimultaneously solving the first and second sets of image signal datacomprises performing a least squared error method on the first andsecond sets of image signal data.
 23. The storage medium of claim 21,wherein simultaneously solving the first and second sets of image signaldata comprises solving the equation RGB_(GC)=C_(calib)*RGB_(RAW) foreach of the colors of the test target, wherein RGB_(GC) is the imagesignal data for the second test image, RGB_(RAW) is the image signaldata for the first test image and C_(calib) is the white balancecalibration matrix.
 24. The storage medium of claim 20, wherein thewhite balance calibration matrix is a 3×3 matrix.
 25. The storage mediumof claim 20, wherein the white balance calibration matrix corrects forvariation in spectral response curves of the imager.